Print management method and apparatus with multiple views

ABSTRACT

A method for managing a plurality of pint jobs is implemented in a print job management apparatus connected to printers. The method includes receiving print job, and visually presenting a display screen to a user, the display screen including first, second and third panels for classifying the received print jobs according to processing phase thereof, the first panel being provided for listing print jobs that are awaiting assignment of printers thereto for processing the print jobs, the second panel being provided for listing print jobs that have been assigned to printers and that have not been completed by the assigned printers, the third panel being provided for listing at least one of first and second categories of print jobs, the first category including print jobs that have been completed, the second category including print jobs that have been cancelled.

This application cross-references and incorporates by reference thefollowing U.S. patent applications in their entireties:

1. Attorney Docket No. 75675.B076: U.S. patent application Ser. No.______, filed on ______, entitled “PRINT JOB MANAGEMENT METHOD ANDAPPARATUS WITH GROUPING FUNCTION” by Geoff W. HARMAN, Toshiro FUJIMORI,Rakesh PANDIT, and Shigenori MATSUBARA.

2. Attorney Docket No. 75675.B077: U.S. patent application Ser. No.______, filed on ______, entitled “PRINT JOB ANALYZING METHOD ANDAPPARATUS” by Geoff W. HARMAN, Toshiro FUJIMORI, Rakesh PANDIT, andShigenori MATSUBARA.

3. Attorney Docket No. 75675.B078: U.S. patent application Ser. No.______, filed on ______, entitled “PRINT MANAGEMENT METHOD AND APPARATUSWITH DESTINATION PANEL” by Geoff W. HARMAN, Toshiro FUJIMORI, RakeshPANDIT, and Shigenori MATSUBARA.

BACKGROUND OF THE INVENTION

1. Field of the Invention

This invention relates to print management method and apparatus, andmore particularly, to printer management method and apparatus formanaging a plurality of print jobs.

2. Description of Related Art

In an environment that processes a large number of print jobs withmultiple printers, there has been a need to manage print jobsefficiently in an organized fashion. Examples of such an environment areprofessional print shops and print/copy departments at largeorganizations, where a variety of print requests, such as large-volumeduplication and large document printing, needs to be processed andcompleted by utilizing multiple printers within a short turn-aroundtime. These environments are collectively referred to as “print shops”in this application. Typically, each printing job specifies a sourcefile that electrically contains a document to be printed, the size,color and the type of the paper on which the document should be printed,the printing resolution, duplex or single-side printing, and certainfinishing conditions, such as book, staple, collate printing, etc.,depending on a print job requester's needs. In order to process a largevolume of print jobs that each differ in terms of these job parameters,a print shop utilizes multiple commercial grade printers. Typically, oneor more black & white (B&W) printers are in operation to process B&Wprinting. Color printers are also installed to handle color printing.Each of these printers, however, has limitations on available printersettings, such as the paper size, the paper type, resolution settings,etc. When a large volume of printing jobs is to be handled with multipleB&W and color printers, it is a daunting task to assign each printingjob to an appropriate printer.

SUMMARY OF THE INVENTION

Accordingly, the present invention is directed to a print managementmethod and apparatus that substantially obviates one or more of theproblems due to limitations and disadvantages of the related art.

An object of the present invention is to provide an improved printmanagement method and apparatus.

Additional or separate features and advantages of the invention will beset forth in the descriptions that follow and in part will be apparentfrom the description, or may be learned by practice of the invention.The objectives and other advantages of the invention will be realizedand attained by the structure particularly pointed out in the writtendescription and claims thereof as well as the appended drawings.

To achieve these and other advantages and in accordance with the purposeof the present invention, as embodied and broadly described, in oneaspect, the present invention provide a method for managing a pluralityof pint jobs, implemented in a print job management apparatus connectedto printers, the method including receiving print jobs, and visuallypresenting a display screen to a user, the display screen includingfirst, second and third panels for classifying the received print jobsaccording to processing phase thereof, the first panel being providedfor listing print jobs that are awaiting assignment of printers theretofor processing the print jobs, the second panel being provided forlisting print jobs that have been assigned to printers and that have notbeen completed by the assigned printers, the third panel being providedfor listing at least one of first and second categories of print jobs,the first category including print jobs that have been completed, thesecond category including print jobs that have been cancelled.

In another aspect, the present invention provides a method for managingpint jobs, implemented in a print job management apparatus, the methodincluding receiving print jobs, and providing a user with userselectable first and second display screens, the first display screenvisually presenting to the user a plurality of panels classifying theprint jobs according to processing phase of the print jobs, the seconddisplay screen visually presenting to the user a single panel that listsall of the print jobs.

In another aspect, the present invention provides a computer programproduct including a computer usable medium having a computer readablecode embodied therein for controlling a data processing apparatusconnected to printers, the data processing apparatus being connected toa display monitor, the computer readable program code being configuredto cause the data processing apparatus to execute a process for managinga plurality of print jobs, the process including receiving print jobs,and causing a display monitor to visually present a display screen to auser, the display screen including first, second and third panels forclassifying the received print jobs according to processing phasethereof, the first panel being provided for listing print jobs that areawaiting assignment of printers thereto for processing the print jobs,the second panel being provided for listing print jobs that have beenassigned to printers and that have not been completed by the assignedprinters, the third panel being provided for listing at least one offirst and second categories of print jobs, the first category includingprint jobs that have been completed, the second category including printjobs that have been cancelled.

In another aspect, the present invention provides a computer programproduct including a computer usable medium having a computer readablecode embodied therein for controlling a data processing apparatusconnected to printers, the data processing apparatus being connected toa display monitor, the computer readable program code being configuredto cause the data processing apparatus to execute a process for managinga plurality of print jobs, the process including receiving print jobs,and providing, through the display monitor, user selectable first andsecond display screens, the first display screen visually presenting toa user a plurality of panels classifying the print jobs according toprocessing phase of the print jobs, the second display screen visuallypresenting to the user a single panel that lists all of the print jobs.

In anther aspect, the present invention provides a print managementapparatus for managing a plurality of print jobs, including a displaymonitor; and a data processor for controlling the display monitor, thedata processor being configured to receive print jobs, and causing thedisplay monitor to visually present a display screen to a user, whereinthe display screen includes first, second and third panels forclassifying the received print jobs according to processing phasethereof, the first panel being provided for listing print jobs that areawaiting assignment of printers thereto for processing the print jobs,the second panel being provided for listing print jobs that have beenassigned to printers and that have not been completed by the assignedprinters, the third panel being provided for listing at least one offirst and second categories of printjobs, the first category includingprint jobs that have been completed, the second category including printjobs that have been cancelled.

In another aspect, the present invention provides a print managementapparatus for managing print jobs, including a display monitor, and adata processor for controlling the display monitor, the data processorbeing configured to receive print jobs, and providing, through thedisplay monitor, user selectable first and second display screens,wherein the first display screen visually presents to a user a pluralityof panels classifying the print jobs according to processing phase ofthe print jobs, and the second display screen visually presents to theuser a single panel that lists all of the print jobs.

It is to be understood that both the foregoing general description andthe following detailed description are exemplary and explanatory, andare intended to provide further explanation of the invention as claimed.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 schematically illustrates a print management system havingmultiple printers.

FIG. 2 schematically illustrates a Main Screen that appears on a displayof a print job management apparatus according to an embodiment of thepresent invention.

FIG. 3 schematically illustrates a method of managing printers inaccordance with an embodiment of the present invention.

FIG. 4 schematically illustrates a data content of a Job Ticketaccording to an embodiment of the present invention.

FIG. 5 is a flow chart illustrating a method for managing a plurality ofprint jobs according to an embodiment of the present invention.

FIG. 6 schematically illustrates an In Box Panel screen according to anembodiment of the present invention.

FIG. 7 schematically illustrates a Group Editor screen according to anembodiment of the present invention.

FIG. 8 is a flow chart illustrating a grouping method according to anembodiment of the present invention.

FIG. 9 is a flow chart illustrating a grouping method according to anembodiment of the present invention.

FIG. 10 schematically illustrates an example of a Queue Panel for aspecified print job according to an embodiment of the present invention.

FIG. 11 schematically illustrates an example of a View Recommends Panelaccording to an embodiment of the present invention.

FIG. 12 schematically illustrates another example of a View RecommendsPanel according to an embodiment of the present invention.

FIG. 13 schematically illustrates an example a Selection Panel accordingto an embodiment of the present invention.

FIG. 14 schematically illustrates an example of All Jobs Panel accordingto an embodiment of the present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

According to embodiments of the present invention, a large number ofprint jobs can be speedily and efficiently processed. FIG. 1 illustratesan example of a print management system in a print shop having multipleprinters according to an embodiment of the present invention. Clientcomputers 1 and 2 are connected to a server 4 via a local area network(LAN). Scanner 3 is also connected to server 4 via the LAN. In thisexample, B&W printers 5, 6, and 7 and color printers 8 and 9 areconnected to the server through the LAN.

In this example, printers 5-9 are commercial standard high-end printersthat can handle high speed, high quality printing. Each of the printers5-9 has multiple paper trays to store paper of various sizes, color, andtypes. Further, some of the printers 5-9 are equipped with asophisticated output sorting mechanism with multiple output trays toperform collate printing or other print finishing functions. Eachprinter has one or more display monitors to display the status of theprinting and various warning and instruction messages to a user. Eachprinter is equipped with its own central processing unit (CPU) andappropriate hardware/software to control its own printing operations,and communicates with server 4 via a LAN. Some of these printers mayalso be multifunction printers that can perform copying and scanning ofdocuments. Appropriate server software is installed in server 4 toperform various standard network administrative functions.

In this embodiment, in addition to the server administrative software,print job management software is installed on server 4 for managing alarge number of print jobs that come into a print shop. Once a printshop operator calls the print job management software, server 4 readsout the print job management software to a random access memory (RAM) ofthe server to carry out various functions of the software, includingmanagement of print jobs.

A print job is a print request specifying various desired optionstogether with a document to be printed. For example, a customer maybring a floppy diskette containing a file in the PDF format for printingwith a particular finishing option. The print shop operator asks thecustomer what kind of print jobs is desired to figure out print jobparameters. Alternatively, the customer may be asked to fill out aquestionnaire sheet to describe what print options he/she desires. Forexample, the customer may desire that the document be printed on 24 lb25% cotton letter size paper in full color in the double-sided printingmode in the amount of 100 copies. The print shop operator then recordsthese job parameter values along with customer information as a file andstore the file and the source PDF file onto the hard disk drive or othersecured storage device so that the print job parameters are associatedwith the file.

Print jobs also may be generated by a customer's requests to copy adocument. When a customer brings a document for copying, the shopoperator scans the document using scanner 3 (which may be a color and/orB&W scanner) and converts the document into a digital file andthereafter creates a data file associated with the scanned sourcedocument in a manner similar to above.

Theses data files representing print jobs and associated files areforwarded to server 4. This way, numerous print jobs are generated andcollected by server 4 on which print job management software is running.

The print job management server 4 running print job management softwarereceives the print job files and analyzes and processes the print jobs.The print job management software preferably is designed to run onWindows OS, Macintosh OS, or Unix X Windows or other popular computeroperating systems implementing a GUI (graphic user interface), such as atouchscreen and/or a mouse and a keyboard, coupled with a displaymonitor. Server 4 (or any suitable data processing apparatus) runningprint job management software of embodiments of the present invention ishereinafter referred to as “print job management server.” In thisapplication, the terms “print job management server” and “print jobmanagement apparatus” broadly refer to any data processing apparatusthat can implement various features of embodiments of the presentinvention described below with appropriate hardware/software.

Main Screen

In order to process numerous print jobs using multiple printers in anefficient and organized manner, the print job management server 4according to embodiments of the present invention presents a Main Screenshown in FIG. 2 on a display monitor of the server 4 (or on a monitor ofclient computer 1 or 2 or on a monitor of any one of the printers 5-9when remote access to the print job management software is possible atthe client computer or the printer). The Main screen contains threepanels: In Box Panel, Print Jobs Panel, and Completed Jobs Panel. Thesethree panels are provided for visually presenting a classification ofprint jobs according to their processing phases. Using these panels, theoperator can readily discern the overall status of print job processingas well as the status of each print job at a glimpse.

Referring to FIG. 2, the In Box Panel contains all new incoming printjobs sent to the print job management server 4 under the header of“Incoming Jobs.” One row in the In Box Panel contains one print job.Print jobs listed in the “Incoming Jobs” in the In Box Panel have notyet been assigned to a printer(s). The Job Ticket Number column listsjob numbers assigned to respective print jobs. Values of select jobparameters, such as Paper Size, Paper Type, Document Color, Job Types,the number of copies/prints, etc., are also indicated in the In BoxPanel. The Printer Jobs Panel displays active jobs at all the printersmonitored by the print job management server 4. That is, the PrinterJobs Panel lists print jobs that have been assigned to a printer (orprinters), but that have not been completed by the assigned printer(s).The Completed Jobs Panel displays completed or cancelled print jobs.Values of select job parameters, such as Paper Size, Paper Type,Document Color, Job Types, the number of copies/prints, etc., are alsoindicated in the Printer Jobs Panel and the Completed Jobs Panel.

Each of these panels can be selectively expanded to a desired size orcan be closed or opened separately by a simple user command, such as oneor a few mouse clicking operations, so that the user can quickly obtaina desired view arrangement. In the example of FIG. 2, the operator canclick on the header of the Panel to collapse or expand the selectedPanel. Moreover, the server can be configured such that by grabbing theheader of a Panel by the mouse pointer and dragging away from the MainScreen, a separate and independent window containing the selected Panelcan appear in the display monitor.

These features allow the user to focus on a particular task at hand. Forexample, in the morning, print shop operators may need to check all newprint jobs that are listed in the In Box Panel to determine the priorityand to understand what type of print jobs need to be processed on thatday. The operator may use grouping features (which will be described indetail below) to organize the new print job and to determine printerassignment. These tasks can be made easier if the operator expands theIn Box Panel to a larger size (to the entire display monitor, forexample) and minimizes or closes the other two Panels. Once the operatoranalyzes and organizes the new print jobs, the operator assigns the newprint jobs to appropriate printers. Then, the operator may focus onmonitoring the progress of the printing operations in order to maximizethe usage of all available printers. The expanded Printer Jobs Panel issuitable for such monitoring work. In the evening, print shop operatorsmay check the results of the printing operations. The operators canefficiently perform this task by expanding the Completed Jobs Panel, andclosing the other two Panels. Thus, depending upon what tasks theoperators wish to focus, the In Box Panel, the Printer Jobs Panel, andthe Completed Jobs Panel can be selectively opened, expanded, or closedby a user command.

Various modifications are possible to the above-examples. For example,the Completed Jobs Panel may be configured to include print jobs thathave been completed, but not print jobs that have been cancelled. Insuch a case, an additional panel “Cancelled Jobs Panel” may be providedto list print jobs that have been cancelled. Alternatively, if desired,the Cancelled Jobs Panel may be provided in place of the Completed JobsPanel. Also, one or more additional panels may be added to furtherassist the operators. For example, an Archive Panel may be provided toarchive print jobs that have been completed or cancelled. The printmanagement server may be configured to automatically archive print jobsthat have been completed and that have been sitting in the CompletedJobs Panel for more than two (2) days, for example. Of course, a use canmanually move any print job to the Archive Panel. The Archive Panel maybe hidden usually, and upon a user command can open to show the archivedprint jobs. Alternatively, the server can be configured to list theArchive Panel header in the In Box Panel for easy access. Furthermore,the following additional panels may be provided: a Hold Job Panel forlisting print jobs that are held off, a Stopped Job Panel for listingprint jobs that are stopped by a user intervention or due to mechanicalproblems at the assigned printer, a Urgent Job Panel for listing printjobs that need to be processed urgently, and a Job Per Printer Panel tolist print jobs that are assigned to a particular printer. One or moreof these panels may be additionally provided in the In Box Panel or maybe made user accessible. These and the above-described panels may beselectively opened, expanded or closed according to user commands thatcan be entered by the GUI or the like, depending the needs of the user.

All Jobs Panel

Professional print shops often receive many inquires from customers,asking the status of their print jobs, for example. Needless to say,timely and accurate responses to these customer inquires are vital to asuccess of the print shop operations. To facilitate this aspect of theprint shop business, the print management apparatus according toembodiments of the present invention is provided with an easilyaccessible single panel to list all of the print job that are managed bythe print management apparatus so that the operator can discern thestatus of the print jobs quickly and accurately, and can easily locatethe desired print jobs along with the relevant information.

FIG. 14 illustrates an example of such a panel, entitled “All JobsPanel,” according to an embodiment of the present invention. The AllJobs Panel can be accessed by clicking on the “View All Jobs” button atthe top-left corner of the Main Screen shown in FIG. 2, for example.Referring to FIG. 14, the All Jobs Panel lists all print jobs that arecurrently managed by the print management apparatus in a single panel.Of course, if all the print jobs cannot be displayed in one windowbecause of its large number, the panel will be provided with a scrollbar on the right, for example, to allow the user to scroll down theentries.

As shown in FIG. 14, the All Jobs Panel of this example lists the printjobs in a table format and includes a number of columns to visually showvarious job parameter values and the status of each print job listed.This example lists Priority, Job Ticket Number, Job Name, Paper Size,Paper Type, Document Color, the number of B&W pages, the number of colorpages, the number of copies, Job Type, Location, Job Status, SubmissionTime, and Expected Delivery Time. The Location indicates where the printjob are located—whether it is in the In Box Panel, whether it has beenassigned to a particular group or particular printer (or printers), orwhether it is in the Completed Jobs Panel. If there are other locations,such as the archive folder, this column can indicate such otherlocations. The Job Status indicates the status of each print job—whethercancelled, waiting, or just arrived, for example.

When a user selects one of these columns by clicking on the header ofthe column, the print management server sorts the print jobs accordingto the selected variable. By clicking on the same column header again,the sorting toggles between the descending order and the ascendingorder. Also, these columns may be added or removed based on userinstructions so that the All Jobs Panel can be customized based on theuser's needs.

Using the All Jobs Panel, the operator can expeditiously locate a printjob and relevant information associated with it in order to respond tocustomer inquires in a timely manner. For example, when the operatorlooks up for a relatively recently arrived print job having a large JobTicket number, the operator can click on the Job Ticket # header on theAll Jobs Panel to sort the print jobs in the descending order to quicklyfind the Job Ticket number. Then the operator can look up the Locationand Job Status columns to find out the status of the print job.

In order to switch back to the Main Screen, the operator simply needs toclick on the Main View button at the top-left corner of the screen(which has been changed from the View All Jobs button; compare FIG. 14with FIG. 2). Thus, the operator can easily toggle between the MainScreen and All Jobs Panel. This will significantly enhance theresponsiveness of the print shop to customer inquires withoutinterfering with printing operations of the print shop.

The All Jobs Panel may also be made accessible by another user at aremote computer or a client computer connected to the server. Then, suchanother user at the separate computer can look up the All Jobs Panel andperform desired work without interrupting the operator using the MainScreen at the display monitor of the print management server. In theexample of FIG. 1, another operator can look up the All Jobs Panel atclient computer 1 or 2 while the operator at server 4 continues to usethe Main Screen having the three panels. This will further improve theefficiency of the print shop operations.

Destination Panel At the right-hand side of the Main Screen of FIG. 2 isthe Destination Panel indicating all the connected printing devices forprocessing print jobs. In one embodiment, the Destination Panel displaysicons of printing devices and is divided into two sections: Printers andClusters/Virtual Queues. The Printers pane shows icons of actualphysical printers that are connected to the server. The Clusters/VirtualQueues pane shows Clusters and Virtual Queues. Clusters and VirtualQueues are software-defined virtual printing devices to which print jobscan be submitted for performing designated printing operations, and willbe described in more detail below.

The operator can drag and drop a print job from any of the Inbox,Printer Jobs Panel and Completed Jobs Panel to one of the iconsdisplayed in the Destination panel. The result is that the print jobmanagement server forwards the print job to the selected printing deviceso that the designated Printer (or Cluster or Virtual Queue) startsprocessing the corresponding printing operation. As a result, the printjob entry in the In Box Panel moves to the Printer Jobs Panel. Once theprint job is completed, the job entry moves from the Printer Jobs Panelto the Completed Jobs Panel.

A Cluster is a software-defined virtual printing device designed toperform a certain class of print jobs more efficiently and accurately.It is a combination of two or more of printers with a specifiedrules/algorithm. When a print job is assigned to a Cluster, the printjob is split into two or more sub-jobs by preset or user-definedrules/algorithm, and these sub-jobs are processed by the respectiveprinters designated by the Cluster. For example, suppose that a printjob (Job No. 12345) containing 10 color pages and 20 B&W pages issubmitted to a Cluster that combines Color Printer 1 and BW Printer 1with a rule requiring all color pages to be printed by Color Printer 1and all B&W pages to be printed by B&W Printer 1. Then, the print job isdivided into sub-job 1 containing all color pages and sub-job 2containing the remaining B&W pages. Thereafter, sub-job 1 is sent to theColor Printer 1 and sub-job 2 is sent to B&W Printer 2 for respectiveprinting operations.

In this particular embodiment, a five (5)-digit job number is assignedto a new print job, and if the job is split into two or more sub-jobs(as a result of being assigned to a Cluster, for example), these splitjobs bear a supplemental number separated by an underbar to indicatetheir association. In the above example, when the Job No. 12345 is sentto the Cluster, the print job is split into Job No. 12345_(—)1 for colorpages and Job No. 12345_(—)2 for B&W pages. Upon this split, Job No.12345 disappears from the In Box Panel, and Job No. 12345_(—)1 appearsunder “Color Printer 1” and Job No. 12345_(—)2 appears under “BW Printer1” in the Printer Jobs Panel of the Main Screen. When the respectivesub-print job is completed, the sub-job entry is moved from the PrinterJobs Panel to the Completed Jobs Panel. The print management server canbe configured such that when all the sub-print jobs are completed andthe corresponding entries of the sub-jobs are moved from the PrinterJobs Panel to the Completed Jobs Panel, theses sub-jobs are merged backand appear as one entry—Job No. 12345 appears in the Completed JobsPanel in the above example. Of course, if desired, this feature may bedeactivated so that the entries of the sub-jobs remain in the CompletedJobs Panel.

A Virtual Queue overrides any job parameter values of a print job thatdo not match the values of corresponding job parameters specified by theVirtual Queue. For example, a Virtual Queue may specify a particular B&Wprinter, tray, paper size, and a particular paper type (such as plainpaper). In this case, when a print job designating color printing onA4-size 24 lb paper is sent to a Virtual Queue that specifies aparticular B&W Printer and letter-size 18 lb paper, for example, theprint job management server ignores these original job parameter valuesof the print job and replaces them with the job parameter valuesspecified by the Virtual Queue. As a result, the B&W printer prints outgrey-scale images on letter-size 18 lb paper. This feature is usefulwhen the existing printer settings do not match the requirements of aprint job, but the customer requests a quick review of the documentfirst, for example.

The server 4 may also be configured such that when all the printingsregarding the split print jobs are completed, the server 4 moves thesejobs to Completed Jobs Panel in the Main Screen. That is to say,according to the specific example presented above, when both printingsregarding Job Nos. 12345_(—)1 and 12345_(—)2 are completed, these Jobsmove to Completed Jobs Panel in the Main Screen. In a preferredembodiment, the split jobs are combined when their printings arecompleted, and the original Job Number of the print job appears inCompleted Jobs Panel. Virtual Queues and Clusters described above may becreated by users or the print shop operators, depending on their needs.Default or sample Clusters and Virtual Queues may also be provided aspart of the print job management software for convenience to users. Forexample, through a drop-down menu from the “Queues” item at the top barof the Main Screen, a user may select “Cluster” and then “New” to open aCluster Editor to create or edit a Cluster.

Double clicking on an icon in the Destination Panel provides the userwith an access to the detailed properties of the Printers, Clusters, andVirtual Queues. More specifically, when a user double-clicks on a devicein the Destination Panel, a separate window appears displaying detailedinformation about the printer (or virtual printing device), such asprinter operating status, the number of outstanding print jobs that needto be processed before processing a new print job. In the case of aCluster (or a Virtual Queue), the pup-up window includes which printers(or a printer) are designated by the Cluster (or the Virtual Queue) andthe rules for assigning a print job to the multiple printers (or theprinter).

Operators often need to quickly identify the operating status and queueinformation of each possible printing device option to determine whichprinter (or virtual printing device) is suited for a particular printjob. The Destination Panel and Main Panel of this example has thefollowing various features to assist such operators.

In the Destination Panel, the parenthesized number at the Printer,Cluster and Virtual Queue icons visually indicates the number of jobs inthe respective print queue (i.e., a waiting list (a print spooler)indicating the number of outstanding print jobs that need to beprocessed before processing a new job.). Other status of the printers(and Cluster and Virtual Queue), such as “disconnected,” “unavailable,”“Error,” “Toner Low,” etc., may also be visually or pictoriallyindicated at or in the vicinity of each icon or in a separate pane. Forexample, the server may utilize appropriate color (such as green,yellow, red, etc.) or other pictorially appealing visual presentationscheme to indicate various operating status of the printers listed inthe Destination Panel. The operating status in this context may include“Active” or “Normal,” “Disconnected,”“Error,” “Serviced,” “Toner Low,”“Paper low,” “Connection Speed Low,” etc. For example, “Active” may beindicated by a green circle in front of the printer, “Error” may beindicated by a red circle, and “Toner Low” and “Paper Low” may beindicated by a yellow circle. Accordingly, the operator can quickly andaccurately recognize the availability of each printer. This willsignificantly reduce errors when the operator manually assigns printjobs to printers or virtual printing devices.

In the example of FIG. 2, the parenthesized number zero “0” at BWPrinter 3 indicates that there is no outstanding job at that printer.And the green circle in front of the printer shows that the operatingstatus of the printer is “Active” indicating that the printer is fullyoperational. FIG. 2 also shows that BW Printer 2 has one (1) outstandingprint job. The red circle in front of the printer indicates that theprinter needs to be serviced or is not operational at this time.

This color coding or similar visual presentation indicating theoperating status of each printer described above can also be utilized toprovide quick, at-a-glimpse presentation of the overall status of theprinter to users. Based on pre-defined or user specifiedrules/algorithm, the server can be configured so as to determine thedegree of the availability of each printer by taking into account boththe number of print jobs in the print queue and the operating status ofthe printer, for example.

FIG. 3 shows an example of such an algorithm. In step S301, the servercommunicates with each of the printers attached to it and determines thenumber of the outstanding print jobs that need to be processed beforeprocessing a new print job at that printer. In step S302, the serverdetermines whether the printer is operational. As described above, theprinter may not be accessible because of maintenance, or the toner orpaper may be low at that particular printer, or the connection speed maybe particularly slow at that printer. This step obtains information onsuch operating status of the printer. In step S303, the server analyzesthe results of steps S301 and S302 to derive the degree of theavailability of the printer. For example, the server can assign thelowest grade to all printers that are found to be non-operational. Itmay assign the highest grade to all printers that have less than 3outstanding print jobs in the print queue, and are fully operational.The server can assign an intermediate grade to all other printers. Instep S304, the server causes the display monitor to visually display thedegree of the availability derived in step S303 so that the operator canreadily identify the availability. For example, the highest grade may beindicated by a green circle in front of the printer. The intermediategrade may be indicated by a yellow circle in front of the printer, andthe lowest grade may be indicated by a red circle.

Because of the ease in recognizing the status, the color coding orsimilar pictorial presentation of the availability of the printingdevices, as described in the various examples above, is particularlyuseful when the operator needs to assign a large number of print jobs tovarious actual or virtual printing devices within a short period oftime.

Furthermore, in the example of FIG. 2, when a pointer is moved over anicon in the Destination Panel by a mouse movement or the like and thenis left unmoved at that position for a short period of time, moredetailed information and/or additional information regarding theprinting device is displayed in a small pup-up windows that appears inthe vicinity of the icon. For example, when a mouse pointer is movedover the BW Printer 3 icon, and is left still for one second, a smallrectangular window appears, which textually shows the IP address, themodel name, and the operating status of the printer, for example. Thisfeature further assists the user in quickly determining a desiredprinting device.

In another embodiment, when a user clicks on one of the icons of thevirtual printing devices displayed in the Destination Panel, all of theactual physical printers (or a printer in the case of Virtual Queues)that are associated with the selected virtual printing device arehighlighted to pictorially identify the associated printers (or theassociated printer). FIG. 2 shows that Cluster 1 is selected by clickingon that icon. As a result, BW Printer 1 and Color Printer 2 arehighlighted, indicating that these printers will be used when Cluster 1processes a print job. This feature is advantageous because the user canquickly identify what physical printer(s) is designated by the selectedvirtual printing device and, when coupled with one or more of theabove-described pictorial printer availability indication, the user canquickly and reliably determine whether the selected virtual printingdevice can process the print job without a long waiting period oradditional manual tasks. This will significantly help reduce the timerequired for the operator to assign print jobs to appropriate virtualprinting devices.

Located below the Destination Panel is Information Panel. TheInformation Panel displays various information concerning the item whichthe operator has selected using the mouse pointer or the like. Theoperator can select any active item that appears in the Main Screen (orin any window that can open in the print job management software) todisplay information relating to the selected item in the InformationPanel. In one embodiment, such an active items include: job ticketentries, group headers in the In Box Panel, printer headers in thePrinter Jobs Panel, and icons in the Destination Panel. This feature isparticularly useful when coupled with the visual presentation of theCluster and Virtual Queue configurations described just above. Forexample, as shown in FIG. 2, when the operator selects Cluster 1,causing highlighting of BW Printer 1 and Color Printer 2 in theDestination Panel, the Information Panel below indicates that Cluster 1splits a print job by color, and when the black and white page count isless than 7, all the printing will be performed by Color Printer 2. Thatis, the Information Panel displays the rules associated with thisCluster without requiring the user to open a separate window. This willfurther help the user quickly search for and locate a desired printer orvirtual printing device for processing a print job.

The method of selecting active items and printing devices in variousexamples above is not limited to clicking operations by a mouse or otherpointing device. For example, the server may be configured such thatsimply locating a pointer over a Cluster or Virtual Queue icon willtrigger the highlighting of the associated printers and the display ofthe relevant information in the Information Panel. Various otherselection operations in GUIs, such as giving a voice command or touchingon an icon on a touch screen, can also be used.

Also, the Destination Panel and the Information Panel, respectively, canbe removed from the Main Screen to appear as a separate window in thedisplay screen by double-clicking the header bar of the respectivepanels, for example, and by mouse operations, can be moved to aconvenient location on the display monitor.

Job Ticket In embodiments of the present invention, print jobs areorganized by using database entries, named “Job Tickets.” A Job Ticketspecifies values of various print job parameters, such as paper size,paper type, user identification information and other relatedinformation, and associates itself to the source file(s). To view thecontent of the Job Ticket, a user can right click on a print job entryin any of the In Box Panel, the Printer Jobs Panel, and the CompletedJobs Panel, and selects “View Job Ticket” from a pup-down menu, forexample.

Based on instructions and information received from a customer, a printshop operator may manually enter the values of these job parametersusing a Job Ticket Editor screen, which is a graphic user interface(GUI) accessible from the Main Screen by an operator through a Windowspup-down menu or other means.

FIG. 4 shows an example of the data content of a Job Ticket. Referringto FIG. 4, in this particular example, a Job Ticket includes a JobTicket number, Ticket Name as well as the values of the following groupsof various other job parameters: Job Info Settings, Basic Settings,Layout Settings, Cover Sheet, Finishing Settings, Inter-Sheet Settings,Tab-Paper Settings, Image Quality Settings, and Customer Information.

Job Info Settings include Job Name, Submit Time, Completed Time, DueDate, Type (print or copy), Priority, the identity of the person whocreated the Job Ticket, Job Location, and Queue Recommendation (i.e., arecommendation on a particular printer or other destination). Job InfoSettings further include the directory pass at which the file containingthe document to be printed is located in a local or networked harddrive, the number of B&W pages, the number of color pages, and SpecialInstructions.

Basic Settings include the number of copies to be made, the orientationof paper (portrait or landscape), information on collate printing,information on offset printing, the original paper size, the outputpaper size, the paper type, and paper source information, such as traynumbers. Layout Settings include settings concerning print layout. CoverSheet includes settings on cover sheets to be produced or prepared.Finishing Settings specify paper finishing settings, including the paperbinding options, such as stitch, staple, and punch.

In addition, the server may be configured to access and analyze thesource file to determine the values of some of the job parameterdirectly from the source file. Then the server enters these values inthe corresponding job parameter entries in the corresponding Job Ticketwithout requiring a user to manually enter them. This will helpeliminate clerical errors and further facilitate the operation of theprint shop.

In this application, the term “value” means, when referred to withrespect to variables or parameters, any numerical quantity, characters,and other types of entries that can specify variables or parameters, andincluding, but not limited to, a specific setting of any of the jobparameters appeared herein.

Job Grouping

Each day, a print shop receives a large number of new print jobsspecifying a variety of printing requirements. As arrived, these printjobs are not organized, yet they must be processed promptly andaccurately. Embodiments of the present invention offer an efficient andhighly transparent organization of incoming print jobs to facilitate theoperation of a print shop. To this end, a print job management server ofembodiments of the present invention analyzes incoming print jobs andclassifies the incoming jobs into several or more groups based onprescribed criteria so that the incoming print jobs are purposefullyorganized and arranged for use in subsequent processes by the server andthe operator.

FIG. 5 is a flow chart illustrating a method for managing a plurality ofprint jobs, which is implemented in a print job management server,according to an embodiment of the present invention. In step S501 theprint job management server receives a plurality of print jobs. In StepS502, the server prescribes grouping criteria for classifying incomingprint jobs. Step S501 can be performed before or after Step S502, or atthe same time. With the grouping criteria set in step S502, the printjob management server automatically classifies all incoming print jobsinto groups without requiring any user intervention (S503). In stepS504, the print job management server transmits a result of the groupingfor use by the user or the print management system. For example, in stepS504, the server may cause an attached display monitor to display theresult of the grouping to a user so that the user can utilize thegrouping information in subsequent operations. Also, print jobs thathave been assigned to a particular group may manually or automaticallybe submitted to a particular printer for printing.

Once the grouping criteria is given, the print job management server ofembodiments of the present invention can be set up so as to analyze allincoming new print jobs automatically to start the grouping operation onthe incoming print jobs (referred to as “Auto Grouping Mode”hereinafter). Alternatively, the print job management server can be setup such that all incoming print jobs are first placed under the IncomingJobs header in the In Box panel and the grouping operation is commencedupon a request form a user (referred to as “On-Demand Grouping Mode”hereinafter). At any rate, in both Modes, once grouping is initiated,there is no need for the user to intervene the operation-the grouping ofthe print jobs continues until the user interrupts, or until thegrouping is completed. If a print job is determined not to belong to anyof the existing Groups, such a job is left under the Incoming Jobsheader in the In Box panel as unassigned.

FIG. 6 shows In Box Panel displaying a result of a grouping operation.As shown in FIG. 6, grouped print jobs are placed under respective groupheaders in the In Box Panel. Basic job parameter values of each printjob are also conveniently displayed on the screen. This particular InBox Panel shows that there are at least two Groups currently: Group BILand Group 1 ET. Group BIL contains 3 print job entries. The print jobslisted under Group BIL all have the same priority setting, the samepaper size and the same color setting (B&W). However, a print job entryunder Group 1 ET (Job No. 99999_(—)2) differs from the entries underGroup BIL in at least paper size and color settings. This visualpresentation provides a user with convenient and reliable access to thestatus of print job grouping. For example, it reduces the amount of timeoperators have to spend in matching print jobs to printers (or virtualprinting devices, such as Clusters and Virtual Queues), and also allowsmore efficient use of printers. With appropriately designed groupingcriteria, all print jobs categorized in a particular group may be sentto a single destination device, such as a particular printer, Cluster,or Virtual Queue, at once. For example, the three entries under GroupBIL in FIG. 6 may be submitted to an appropriate B&W printer at once.

Manual Creation of Target Groups

As the grouping criteria for grouping print jobs, fixed target Groups towhich incoming print jobs are being assigned can be specified inadvance. For example, a print shop operator can manually create eachtarget Group by specifying values of certain job parameters using aGroup Editor screen, which is accessible from the Main Screen by theoperator. FIG. 7 schematically illustrates an example of the GroupEditor Screen. As shown in FIG. 7 an operator can type in, or choosefrom the drop-down menu, values of these job parameters. In thisparticular example, the job parameters that can be specified by the userto define a Group include Customer Information (e.g., the customername), Priority (high, medium, or low), Color Settings (Color Only,Black & White only, Mixed), Copies (the number of copies), Paper (size,type, weight color, input tray number), Finishing, and SpecificInstructions. In a preferred mode, a set of the job parameters that canbe set to define a Group is a subset of the job parameters that can beset to define a Job Ticket (thereby a print job) described above.

Alternatively, a Group can be created by referencing to a particularprint job. The operator may select a single print job and use the GroupEditor to create a new Group by imposing all or part of the jobparameter values of the selected job onto the new Group. For example,the print job management server can be set such that by right-clickingon a print job entry in the In Box Panel on the screen, the operator canchoose the “Create Group” option to open the Group Editor screen thatalready contains all job parameter values transferred from the JobTicket of the print job. The operator can then accept all the values, asit is, or if desired, delete or modify some of the job parameter valuesto create a Group. This way, the operator can easily create desiredGroups.

While the above example of the Group Editor allows the operator to setthe values of numerous job parameters, the operator does not have tospecify the values of all of the job parameters that appear in the GroupEditor to define a Group. By setting only some of the job parameters, aGroup defined by only those job parameter values (high-level group) canbe created. For example, if a Group is created by setting the jobparameter “Color” to “Black and White” and the job parameter “PaperSize” to “8.5×11,” all incoming jobs that have the same values in Colorand Paper Size job parameters (i.e., B&W and 8.5×11) will be placed inthat Group regardless of the values of other job parameters. Thus,depending on the user needs and design of the system, mutually exclusiveGroups, overlapping Groups, and hierarchically structured Groups can becreated. However, if desired, the server can permit only certain typesof group creations. For example, it can be configured so that onlymutually exclusive Groups can be created by a user. Furthermore, insteadof specifying particular values of job parameters, a range of jobparameters can be specified to define Groups.

Further, default Groups can be provided so that often-used Groups arepre-installed in the print job management server. The data that definesdefault Groups can be stored in a storage device that is accessible fromthe print job management server.

FIG. 8 illustrates a grouping method using predefined Groups accordingto an embodiment of the present invention. Thus, this example assumesthat the server already defined Groups into which incoming print jobswill be placed, as the grouping criteria. The print job managementserver first analyzes all the predefined Groups created by a user (S801)to determine the properties of the predefined Groups, and compares thejob parameter values of the Groups with the values of the correspondingjob parameters of the incoming print job (S802). If an incoming jobdefined by a Job Ticket matches the job parameter values of a Group(S803), the job is placed in that Group (S804) and listed under theheader of that matching Group in the In Box Panel on the screen. Forexample, suppose that Group 1 ET is defined by specifying values of thejob parameters of Customer, Color Settings, Copies, Paper, Finishing,and Special Instructions. If the print job management server finds aprint job that has exactly the same respective values in these jobparameters, such a print job will be placed under the Group 1 ET headerin the In Box Panel. Other appropriately designed comparison/groupingalgorithms may also be used.

Automatic Creation of Target Groups

Rather than using predefined or user-specified static Groups, the printjob management server can be configured such that target Groups arecreated dynamically based on the job parameter values of incoming printjobs. In this mode, the server first determines one or more of the jobparameters to look for, and analyzes the values of these job parametersin incoming print jobs. According to the values of the job parameters,the server groups the incoming print jobs into separate groups. Thus,groups are created based on values of these particular parameters in theincoming print jobs, thereby eliminating the user's need to createGroups. The print job management server can use this scheme as thegrouping criteria for conducting the automatic grouping operation.

FIG. 9 illustrates an example of an algorithm that can be implemented onthe server to perform this operation, according to an embodiment of thepresent invention. As shown in FIG. 9, a user first selects a particularjob parameter (or job parameters) to define grouping criteria (S901).When a first print job arrives, the value of the selected job parameteris read out from the print job (Job Ticket) to define a first Group(S905) (assuming that there is no previously defined Group to put thefirst print job into) so that the first Group will receive all printjobs that have the same value as the first print job in the selected jobparameter. The first print job is categorized into the first Group justcreated (S904). Thereafter, subsequent print jobs are analyzed todetermine whether the print jobs belong to the first Group (S902, S903).All subsequent print jobs that have the same job parameter value as thefirst Group are placed in the first Group (S904). When a print jobhaving a different value in the selected job parameter arrives, a newGroup (second Group) is created based on the new value of the jobparameter found in such a new print job (S905). Like operations continueto create the third, fourth, . . . Groups. Thus, once a job parameter(or job parameters) according to which the grouping operation isperformed (S901) is selected, the grouping operation (steps S902-S905)can be performed without user intervention. Other appropriately designedcomparison/grouping algorithms may also be used.

For example, the operator can choose the “Finishing” job parameter todefine criteria for grouping print jobs. Suppose that first 10 incomingprint jobs have only two differing values in Finishing: “left-sidestaple” (4 jobs) and “bare printing” (6 jobs). Then, when analysis ofthese first 10 print jobs is completed, two Groups corresponding tothese two job finishing values are automatically created and these 10print jobs are placed in the respective groups. If the 11th incoming jobhas a “right-side staple” value in the Finishing job parameter, then anew Group is created and the 11th job is placed in that Group. Thesimilar operations continue until the operator interrupts it, or after acertain user-specified number of incoming jobs are processed, forexample.

The name of the Groups that are created in this way can be set by usinga certain predetermined rule, such as using the first three letters ofthe job parameter that defines the groups, followed by a numericalnumber, for example. In the above example, the names of the first andsecond Groups would be FIN1 and FIN2, and the name of the third Groupwould be FIN3. This way, the grouped print jobs are listed under theappropriately named group header in the In Box Panel on the screen.

In another embodiment, rather than serially processing the abovegrouping operation, a plurality of print jobs can be grouped at once ina similar manner. For example, after a certain number of print jobscomes in under the Incoming Jobs header in the In Box Panel and is piledup there, the operator may enter an automatic grouping command byselecting one or more of job parameters to prescribe the groupingcriteria. In response, the server will process the print jobs from thetop of the print jobs listing under the Incoming Jobs header using theprocess described above, so that all print jobs that are then listedunder the Incoming Jobs header will be grouped in accordance with theselected job parameter(s).

The grouping operation can also be applied to a set of print jobs thatare selectively picked up by an operator. For example, a user may selecta certain set of print jobs by selectively highlighting print jobentries in the In Box Panel, and then instruct the server to perform theabove-described grouping operations.

During or after the grouping operation, an operator can open and monitorthe contents of groups by reviewing the In Box Panel. As noted above,the operator can assign the print jobs that belong to a particular Groupto a desired destination device, such as a Group, a Cluster or a VirtualQueue, for printing.

The server can be also configured so that once grouping is completed (orduring the grouping process), all print jobs grouped into a particularGroup are immediately submitted to a particular printer, a particularCluster, or a particular Virtual Queue for printing without a delay(referred to as “Auto Printing Mode”). If coupled with the automaticgrouping operations described above, grouping of print jobs and printerassignment and execution of printing can all be performed without userintervention. This mode is referred to as “Full Auto Mode.” In the FullAuto Mode, the groups dynamically created as described above may only betransitory, and may be configured to disappear once print jobs in therespective group are submitted to printing devices for printing, forexample.

Queues Panel

As described above, print jobs specify a variety of job parameters, suchas color, paper type, paper size and finishing options. There isvirtually an unlimited number of possibilities in job parameter settingsof print jobs. However, due to limited functionalities of each printer,once set up in a certain way, even a very large print shop cannot handleevery conceivable print job without altering the initial settings ofsome of the installed printers. The print jobs that cannot be handledwithout altering the existing printer settings are referred to as“non-standard print jobs” hereinafter. To name a few examples, evencommercial grade high-end printers have a finite number of input papertrays, each containing paper of a particular size, such as letter sizeor legal size, and may not be equipped with sophisticated finishingfunctions that are required by certain jobs. Such printers cannot beused when a particular finishing option is specified. Thus, in order tomeet today's customer needs, print shop operators must often change thesettings of the existing printer(s), the paper size in a paper tray,etc., in order to process non-standard print jobs.

However, it is not always easy to find a printer whose settings arerelatively easily changed. The operator can review the values of the jobparameters set in the requested print job by selecting the job entry inthe In Box Panel and by opening the Job Ticket screen. The operator canalso review the printer settings of each of the printers (or virtualprinting devices) by, for example, clicking on printer icons displayedin the Destination Panel. Then, theoretically, the operator can manuallycompare the values of job parameter set in the print job with theprinter settings to find out a printer having the initial printersettings that are closest to the corresponding parameter values of theprint job. However, when numerous printers (and virtual printingdevices) are available for printing, this search is cumbersome andtime-consuming.

Auto-printing operations discussed above will often leave print jobsthat do not meet any of grouping criteria in the Incoming Jobs pane. Inorder to print these jobs, they must be manually assigned to aprinter(s). Also, a user may elect to manually select a printer deviceeven though automated grouping and printing options are possible. Whennumerous printers are available, manually locating the best or exactmatching destination device (Printer, Cluster or Virtual Queue) is adifficult and time consuming task.

A print job management server according to embodiments of the presentinvention provides convenient features to assist users to find aprinting device (a Printer, a Cluster or a Virtual Queue) that exactlyor closely conforms to the job parameter values of a print job. In oneembodiment, a print job management server compares the printer settingsof each of the printers with the values of relevant job parameters of aprint job, and if any of the printer settings in one printer matches thecorresponding parameter value in the print job, that match iscommunicated to the user.

In a particular embodiment, the print job management server can launch aQueue Panel at request of a user. For example, when an operator selectsa particular print job by clicking one of the print job entries in theIn Box Panel, a Queue Panel window appears. The Queue Panel displays allPrinters, Clusters and Virtual Queues that are connected or defined bythe print job management server as available printing devices forprinting jobs, and highlights the printer settings that match thecorresponding job parameter values of the print job in question.

FIG. 10 illustrates an example of the Queue Panel for a specified printjob. Referring to FIG. 10, the Queue Panel lists all available printersand software-defined virtual printing devices: Printers, Clusters, andVirtual Queues, together with the printer settings of Color, Paper Size,and Paper Type of each printer. If any of the printer settings of theseparameters match a value(s) of the corresponding job parameter(s)specified in the print job, such a printer setting is highlighted inyellow. With this information, the user can narrow the search for thebest printing device to process the print job. In the example of FIG.10, the Queues Panel indicates that BW Printer 1 1050 has paper trays1-3, respectively containing various sized paper of different types. Asindicated in yellow, the Queues Panel shows that the Paper Size andPaper Type settings in Tray 2 of the printer match the Paper Size andPaper Type values of this particular print job. Similarly, otherhighlighted portions indicate that the printer settings match some ofthe job parameter values of this print job. The status of each printer,such as operating status, the number of spooled print jobs, andapproximate waiting time, is also displayed in the corresponding headerrow to assist the operator, which is also convenient to a user. Forexample, if two Printers are found to have an exact match with respectto these three printer settings, the operator can select one of thePrinters that has a less waiting time for printing.

Thus, the Queue Panel displays how each printing device conforms to thejob parameter values required by a print job. Therefore, a user caneasily and quickly locate a printing device to perform the requestedprint job or to find out which printer settings should be modified toperform the requested print job. In essence, the data in the Queue Panelprovides the key data the operator needs to complete this otherwisetime-consuming and difficult task.

When a printer that does not have a perfect match (meaning, say, thereis no match in Paper Size) receives the print job, the print jobmanagement system can be configured such that the monitor at theselected printer will display a warning message indicating that theoperator has to perform a certain manual task to complete the submittedprint job. For example, when the operator at the server selects aprinter that has a match only for the Color and Paper Type settings, anoperator at the printer will be notified that the paper size of acertain input tray needs to be changed to a particular paper size toprocess the print job. Alternatively, before selecting such anon-matching printer as the job destination, the operator can change thepaper size in advance so that the Queue Panel now displays a perfectmatch to that printer.

The Queue Panel of the above example also has the following advantage.As described above, a Cluster is a combination of two or more of theprinters together with specified rules/algorithm to perform a print job.The Queue Panel visually provides a point-of-reference for the operatorto see these linked printers to determine which features of theseprinters mach the requirements of the selected print job. This visualreference makes the Cluster feature easier to locate, identify and use.Moreover, even when a perfect match is not found with respect to aCluster, the operator can easily identify what particular printersetting needs to be changed (or to be ignored) in order to cause aperfect match (or a quasi-perfect match) of the selected print job tothe Cluster.

The printer settings that can be displayed in the Print Queues Panel arenot limited to Color, Paper Size, and Paper Type. Depending on needs andthe design of the print management system, other parameters, such asFinishing options, Layout Settings (e.g., double-sided or single-sided)may be listed in addition or in lieu of these parameters.

Thus, in order to help the operator determine a virtual or actualprinting device for a print job, the Queue Panel lists destinationdevices (Printers, Clusters, and Virtual Queues) together withinformation on the printer status and information regarding matching ofeach printer setting with the specified printer job. This is useful andconvenient especially where a large number of printers with variousprinter settings need to be managed by the print job management server.

In a preferred mode, as described above, the Queue Panel lists allconnected printers and other virtual printing devices (Clusters andVirtual Queues). However, depending on the user preference, it may listonly printers that have at least one setting that is found to match thejob parameter value of the print job in question. This feature may beadvantageous where the number of connected printers controlled by theserver is very large and the Queues List would otherwise contain a longlist of the printers and other virtual printing devices.

Printing Device (Printer/Cluster/Virtual Queue) Recommendation

As described above, the Queue Panel lists all the connected actual andvirtual printing devices (Printers, Clusters, and Virtual Queues)together with information on the printer status and informationregarding matching of each printer setting with the specified printerjob. Based on the information displayed on the Queue Panel, the operatormanually determines the best-matched and/or the second-best destinationdevice(s). In another embodiment of the present invention, the print jobmanagement server can perform this determination in accordance with auser defined or preset criteria. This will further improve the ease andefficiency of print managing operations.

In one embodiment, given a print job, the print job management server ofthe present invention can recommend one or more printing devices(Printer, Cluster, or Virtual Queue) for that particular print job. Byusing an algorithm implemented by software, for example, the print jobmanagement server determines the suitableness of the printing devicesfor the print job. For example, the print job management server willfirst look for a printing device that supports the color of the documentto be printed (i.e., the Color job parameter in the print job). Then,the print job management server will look for finishing option matches,and then will look for paper-related options, such as paper size andpaper type, in order to progressively narrow the search for the bestmatching printing devices. The algorithm may be preset in the print jobmanagement software installed on the server, or it may be modified oraltered by user inputs. For example, the server can be configured suchthat the operator can determine the priority in which the serverconsiders these settings prior to making recommendations. Alternatively,or in addition, the operator can specify the algorithm itself to beused, such as which parameter should be used in what order in order toperform the recommendation operation.

In a particular embodiment, when the operator first selects a particularprint job and selects the “View Recommends” option from the drop-downmenu (or select View Recommends icon in the icon bar of the MainScreen), the server performs a searching operation in accordance withthe above-described algorithm to determine a recommended printingdevice(s). Then, the server will launch a View Recommends Panel tovisually indicate the recommended printing devices to the operator. Inthis example, although the arrangement of entries in the View RecommendsPanel is similar to that of the Queues Panel, the View Recommends Panellists only those printing devices (Printer, Cluster, or Virtual Queue)that are recommended by the print job management server.

As in the Queue Panel, a View Recommends Panel also lists the status ofthe printers listed therein. Based on the information displayed on theView Recommends Panel, the operator can readily decide what destinationdevice to use for processing the print job. For example, if there aremore than one exact matching printing devices, the operator may pick adevice that has a shorter waiting time.

FIG. 11 illustrates an example of the View Recommends Panel. In FIG. 11,BW Printer 1 and BW Printer 2 appear in the View Recommends Panel,indicating that they are the recommended printing devices for Job Ticket#0003. As indicated by green-highlighted printer name and correspondingprinter setting rows, these printers equally qualify, both having anexact match in the Paper Size, Paper Type and Color settings. However,the connection status of BW Printer 2 shows “Error,” indicating that theprinter needs to be serviced and is not available for immediateprinting. Thus, the operator will likely choose BW Printer 1 for thisprint job.

FIG. 12 illustrates another example of the View Recommends Panel.Cluster 1 appears in the View Recommends Panel, indicating that Cluster1 is the recommended printing device for Job Ticket #0001. As indicatedin yellow highlighted printer name row, Color Printer 2 currently doesnot have printer settings that exactly match the corresponding jobparameter values of the print job. In this example, the Paper Type jobparameter mismatches. The operator needs to manually replace the papercontent of Tray 2 of Color Printer 2, or if desired, can force the printjob to be processed through Tray 2 to process this Job Ticket.

Because the server can determine printing devices that are suited to agiven print job and the result is visually presented along with statusinformation of each recommended printing device, an operator can easilyidentify the best printing device option for printing or for changingprinter settings.

Selection Panel

In another embodiment, the above-described features of the Queue Paneland View Recommends Panel are combined so that all the information andfunctionalities discussed above with respect to these panels areaccessible from a single, conveniently designed panel. In a particularembodiment, in place of the Queue Panel and View Recommends Panel, aView Selection panel is provided. When a user selects a print job in theIn Box, and clicks on the “View Selection” button in the icon header row(or from the drop-down menu), a “Selection Panel” opens. A recommendedprinting device (or devices) appears in a manner similar to thatdiscussed above. For example, a recommended printing device(s) ishighlighted and expanded to show how printer settings match the jobparameter values of the specified print job. A printing device(s) thathas a perfect match with respect to all of the relevant printer settingsmay be highlighted in green and the corresponding tray may also behighlighted in green. The second best match that has a match in onlysome of the printer settings may be highlighted in yellow. Thus, as inthe case above, the degree to which the printing devices match the printjob can be indicated using different color.

All other non-recommended printing devices also appear in the SelectionPanel. To save the space, printing devices that do not have a perfectmatch may be listed by presenting only their printing device names, forexample. However, if desired, the operator can click on the printingdevice name to expand it, and review detailed printer settings of theselected printing device and how each of the printer settings matchesthe specified job parameter value. As in the case of Queue Panelsdiscussed above, the individual printer settings that match thespecified value of the print job parameter may be separately highlightedin yellow.

FIG. 13 illustrates an example of the Selection Panel. At the top headerrow of the panel, the name of the panel, “Selection Panel” appears alongwith the number of Printers, Clusters, and Virtual Queues that areconnected to the server. Just below the header row is shown informationon the Job Ticket, indicating the job ticket number and the job name aswell as the paper size, paper type, color and finishing optionsspecified by the print job. As the print job parameters for thefinishing options, this example designates Staple, Fold, Booklet andDuplex.

The rest of the panel is also designed in a manner similar to the QueuePanel and the View Recommends Panel discussed above. The panel listsprinting devices (Printers, Clusters, Virtual Queues) along with theirprinter settings and indicates how these printer settings conform to thejob parameter values specified in the print job. In the example of FIG.13, each row of the paper tray indicates the paper size, the paper type,and the color of paper in the tray as well as information on whetherpaper fed from that paper tray can be processed by the followingfinishing options: Staple, Fold, Booklet, and Duplex. For example the“X” mark under Staple column indicates that the Staple finishing isavailable.

In this example, Printer 1 and its Tray 1 are highlighted in green,indicating that the printer settings perfectly match the print jobrequested. Indeed, it can be seen that the job parameter values of thisprint job, listed on the top of the Panel, match the respective printersettings listed for Tray 1 of Printer 1.

The size of the Selection Panel window is designed such that when thepanel initially opens, the recommended printing devices are shown in thewindow. FIG. 13 shows the highlighted Printer 1 on the top, followed byPrinter 2 and collapsed entries of Clusters and Virtual Queues. TheSelection Panel of this example, however, contains all the printingdevices (Printers, Clusters, Virtual Queues) connected to the server sothat the status and other information, discussed with reference to QueuePanels above, of each of these devices are also accessible through thisPanel by the user. By scrolling down the window and/or expanding thewindow, the user can access these printing devices and review thecontent.

The printing devices that do not qualify as recommended devices arecollapsed to show only their names (or their type if there is no much inan entire type of printing devices) to save the space. In FIG. 13, thereis no recommended printing device in Clusters and Virtual Queues.Therefore, only the names of the device type (Clusters and VirtualQueues) appear in the Selection Panel. If a user wishes to see theprinter settings of these devices, the user can click on the device typename and then on a printing device name to expand the view.

As in the Queue and View Recommends Panels, the Selection Panel alsolists the status of the printing devices. Based on the informationdisplayed on the Selection Panel, a user can readily decide whatprinting device to use for processing the print job. For example, ifthere are more than one exact matching printing devices, the operatormay pick a device that has a shorter waiting time. Further, using anappropriate algorithm, the server may be configured to refer to thestatus information of these printing devices and automatically determinethe best matching printing device for presenting to the user.

In the above descriptions, the term “black and white” includes grayscales if the black and white printers are capable of printing grayscale images (e.g. using half-toning or some other suitable method).

While the embodiments have been described as being applied in a printshop environment, the invention is not limited to any physical settingof a shop or network, and can be applied to a print shop system having adistributed setting where printers at different locations are connectedto a server. In particular, it should be apparent that one or more ofthe components of the print shop system can communicate with the rest ofthe system via virtual private network (VPN) or similar means throughthe Internet. Moreover, referring to FIG. 1, although the server 4 ofthe above examples functions as the print job management server as wellas the network server, a separate stand-alone computer may be providedto run the print job management software. In the alternative, whenproperly configured, one of the client computers 1 and 2 or thecomputers attached to one of the printers 5-9 (if such a printer existsamong them) may be used to assume the role of the print job managementserver. Further, although the above-referenced figures show particulardesigns of various windows, including the Main Screen, the In Box Panel,the Printer Jobs Panel, the Completed Jobs Panels, the DestinationPanel, and the Information Panel, the present invention is not limitedto the particular designs depicted in these figures and described above,and broadly encompasses various other designs that can perform theoperations and functionalities described above. Furthermore, although aWindows based server computer with appropriate software has beendescribed above as an example, a print management system of the presentinvention can be implemented in a proprietary hardware system that isspecifically designed to perform the above-described variousfunctionalities of the print management system.

It will be apparent to those skilled in the art that variousmodification and variations can be made in the print management methodand apparatus of the present invention without departing from the spiritor scope of the invention. Thus, it is intended that the presentinvention cover modifications and variations that come within the scopeof the appended claims and their equivalents.

1. A method for managing a plurality of pint jobs, implemented in aprint job management apparatus connected to printers, the methodcomprising: receiving print jobs; and visually presenting a displayscreen to a user, the display screen including first, second and thirdpanels for classifying the received print jobs according to processingphase thereof, the first panel being provided for listing print jobsthat are awaiting assignment of printers thereto for processing theprint jobs, the second panel being provided for listing print jobs thathave been assigned to printers and that have not been completed by theassigned printers, the third panel being provided for listing at leastone of first and second categories of print jobs, the first categoryincluding print jobs that have been completed, the second categoryincluding print jobs that have been cancelled.
 2. The method of claim 1,further comprising assigning one print job in the first panel to one ormore of the printers; and refreshing the display screen to reflect theprinter assignment of said one print job.
 3. The method of claim 2,wherein the step of refreshing includes: removing an entry of said oneprint job from the first panel; and adding an entry representing saidone print job to the second panel.
 4. The method of claim 3, wherein thestep of assigning assigns said one print job to two or more of theprinters, and includes: splitting said one print job into acorresponding number of sub-print jobs, and assigning the sub-print jobsto the two or more of the printers, respectively, and wherein the stepof adding includes adding entries of the sub-print jobs to the secondpanel.
 5. The method of claim 2, further comprising: causing said one ormore of the printers to process said one print job; and upon completionof said one print job by said one or more of the printers, refreshingthe display screen to reflect the completion of said one print job. 6.The method of claim 2, wherein the step of assigning assigns said oneprint job to two or more of the printers, and includes: splitting theprint job into a corresponding number of sub-print jobs and assigningthe sub-print jobs to the two or more of the printers, respectively,wherein the step of refreshing the display screen to reflect the printerassignment includes removing an entry of said one print job from thefirst panel, and adding entries of sub-print jobs to the second panel,and wherein the method further comprises causing said two or more of theprinters to process the sub-print jobs, respectively; and uponcompletion of said one print job by said two or more of the printers,removing the entry of said one print job from the second panel andadding an entry of said one print job to the third panel.
 7. The methodof claim 6, wherein upon completion of each sub-print job by theassigned printer, the corresponding entry of the sub-pint job is removedfrom the second panel and is added to the third panel, and wherein whenall of the sub-print jobs are removed from the second panel and added tothe third panel, said sub-print jobs are merged and appear as one entryin the third panel.
 8. The method of claim 1, further comprising:receiving a command from a user to assign one print job to one or moreof the printers; assigning said one print job to said one or more of theprinters in accordance with the command received from the user; andrefreshing the display screen to reflect the printer assignment of saidone print job.
 9. The method of claim 1, further comprising receiving acommand from a user to selectively close one or more of the first,second and third panels.
 10. The method of claim 1, further comprisingreceiving a command from a user to selectively open one or more of thefirst, second and third panels.
 11. A method for managing pint jobs,implemented in a print job management apparatus, the method comprising:receiving print jobs; and providing a user with user selectable firstand second display screens, the first display screen visually presentingto the user a plurality of panels classifying the print jobs accordingto processing phase of the print jobs, the second display screenvisually presenting to the user a single panel that lists all of theprint jobs.
 12. The method of claim 11, further comprising: receiving acommand from a user to select at least one of the first and seconddisplay screens; and in response to the command, visually presenting tothe user the selected at least one of the first and second displayscreens.
 13. The method of claim 12, wherein the command selects one ofthe first and second display screens.
 14. The method of claim 11,further comprising: visually presenting the first display screen to auser; receiving a command from a user to switch to the second displayscreen; and in response to the command from the user, closing the firstdisplay screen and opening the second display screen.
 15. The method ofclaim 11, further comprising: receiving a command from a user to definean order in which the print jobs are arranged in said single panel inthe second display screen, and sorting the print jobs in said singlepanel in accordance with the command received from the user.
 16. Themethod of claim 11, wherein the first display screen includes a firstpanel, a second panel, and a third panel, the first panel listing printjobs that are awaiting assignment of printers thereto for processing theprint jobs, the second panel listing print jobs that have been assignedto printers and that have not been completed by the assigned printers,the third panel listing at least one of first and second categories ofprint jobs, the first category including print jobs that have beencompleted, the second category including print jobs that have beencancelled.
 17. A computer program product comprising a computer usablemedium having a computer readable code embodied therein for controllinga data processing apparatus connected to printers, the data processingapparatus being further connected to a display monitor, the computerreadable program code being configured to cause the data processingapparatus to execute a process for managing a plurality of print jobs,the process comprising: receiving print jobs; and causing a displaymonitor to visually present a display screen to a user, the displayscreen including first, second and third panels for classifying thereceived print jobs according to processing phase thereof, the firstpanel being provided for listing print jobs that are awaiting assignmentof printers thereto for processing the print jobs, the second panelbeing provided for listing print jobs that have been assigned toprinters and that have not been completed by the assigned printers, thethird panel being provided for listing at least one of first and secondcategories of print jobs, the first category including print jobs thathave been completed, the second category including print jobs that havebeen cancelled.
 18. A computer program product comprising a computerusable medium having a computer readable code embodied therein forcontrolling a data processing apparatus connected to printers, the dataprocessing apparatus being connected to a display monitor, the computerreadable program code being configured to cause the data processingapparatus to execute a process for managing a plurality of print jobs,the process comprising: receiving print jobs; and providing, through thedisplay monitor, user selectable first and second display screens, thefirst display screen visually presenting to a user a plurality of panelsclassifying the print jobs according to processing phase of the printjobs, the second display screen visually presenting to the user a singlepanel that lists all of the print jobs.
 19. A print management apparatusfor managing a plurality of print jobs, comprising: a display monitor;and a data processor for controlling the display monitor, the dataprocessor being configured to receive print jobs, and causing thedisplay monitor to visually present a display screen to a user, whereinthe display screen includes first, second and third panels forclassifying the received print jobs according to processing phasethereof, the first panel being provided for listing print jobs that areawaiting assignment of printers thereto for processing the print jobs,the second panel being provided for listing print jobs that have beenassigned to printers and that have not been completed by the assignedprinters, the third panel being provided for listing at least one offirst and second categories of print jobs, the first category includingprint jobs that have been completed, the second category including printjobs that have been cancelled.
 20. A print management apparatus formanaging print jobs, comprising: a display monitor; and a data processorfor controlling the display monitor, the data processor being configuredto receive print jobs, and providing, through the display monitor, userselectable first and second display screens, wherein the first displayscreen visually presents to a user a plurality of panels classifying theprint jobs according to processing phase of the print jobs, and thesecond display screen visually presents to the user a single panel thatlists all of the print jobs.